package com.ruoyi.other.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 会员管理对象 e_personnel
 *
 * @author ruoyi
 * @date 2024-11-21
 */
@Data
public class EPersonnel extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @Excel(name = "主键")
    private Long id;

    /** 会员类型(0是快递员，1是普通会员) */
    @Excel(name = "会员类型(0是快递员，1是普通会员)")
    private String memberType;

    /** 头像 */
    @Excel(name = "头像")
    private String avatar;

    /** 真实姓名 */
    @Excel(name = "真实姓名")
    private String name;

    /** 手机号 */
    @Excel(name = "手机号")
    private String phone;

    /** 注册类型(0是自主注册，1是手工创建) */
    @Excel(name = "注册类型(0是自主注册，1是手工创建)")
    private Long registrationType;

    /** 快递公司 */
    @Excel(name = "快递公司")
    private String courierCompany;

    /** 创建时间 */
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createTime;

    /*开始时间*/
    @TableField(exist=false)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date startTime;

    /*结束时间*/
    @TableField(exist=false)
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date endTime;

    /** 注册IP */
    @Excel(name = "注册IP")
    private String registeredIp;

    /** 会员余额 */
    @Excel(name = "会员余额")
    private BigDecimal memberBalance;

    /** 实名认证状态(0是未认证，1是已认证) */
    @Excel(name = "实名认证状态(0是未认证，1是已认证)")
    private Long realNameAuthenticationStatus;

    /** 状态(0是禁用，1是正常) */
    @Excel(name = "状态(0是禁用，1是正常)")
    private Long status;

    /** 登录信息外键 */
    @Excel(name = "登录信息外键")
    private Long lid;

    /*登录密码*/
    @TableField(exist = false)
    private String loginPassword;

    /*支付密码*/
    @TableField(exist=false)
    private String paymentPassword;

    /*登录密码状态*/
    @TableField(exist = false)
    private Long loginPasswordStatus;

    /*支付密码状态*/
    @TableField(exist = false)
    private Long paymentPasswordStatus;

    /*最近登录时间*/
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date loginTime;

    /*余额*/
    @TableField(exist = false)
    private BigDecimal totalBalance;

    /*账户状态*/
    @TableField(exist=false)
    private BigDecimal accountStatus;

    private String type;

    private Integer number;

    @Override
    public String toString() {
        return "EPersonnel{" +
                "id=" + id +
                ", memberType='" + memberType + '\'' +
                ", avatar='" + avatar + '\'' +
                ", name='" + name + '\'' +
                ", phone='" + phone + '\'' +
                ", registrationType=" + registrationType +
                ", courierCompany='" + courierCompany + '\'' +
                ", createTime=" + createTime +
                ", startTime=" + startTime +
                ", endTime=" + endTime +
                ", registeredIp='" + registeredIp + '\'' +
                ", memberBalance=" + memberBalance +
                ", realNameAuthenticationStatus=" + realNameAuthenticationStatus +
                ", status=" + status +
                ", lid=" + lid +
                ", loginPassword='" + loginPassword + '\'' +
                ", paymentPassword='" + paymentPassword + '\'' +
                ", loginPasswordStatus=" + loginPasswordStatus +
                ", paymentPasswordStatus=" + paymentPasswordStatus +
                ", loginTime=" + loginTime +
                ", totalBalance=" + totalBalance +
                ", accountStatus=" + accountStatus +
                ", type='" + type + '\'' +
                ", number=" + number +
                '}';
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getMemberType() {
        return memberType;
    }

    public void setMemberType(String memberType) {
        this.memberType = memberType;
    }

    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Long getRegistrationType() {
        return registrationType;
    }

    public void setRegistrationType(Long registrationType) {
        this.registrationType = registrationType;
    }

    public String getCourierCompany() {
        return courierCompany;
    }

    public void setCourierCompany(String courierCompany) {
        this.courierCompany = courierCompany;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getRegisteredIp() {
        return registeredIp;
    }

    public void setRegisteredIp(String registeredIp) {
        this.registeredIp = registeredIp;
    }

    public BigDecimal getMemberBalance() {
        return memberBalance;
    }

    public void setMemberBalance(BigDecimal memberBalance) {
        this.memberBalance = memberBalance;
    }

    public Long getRealNameAuthenticationStatus() {
        return realNameAuthenticationStatus;
    }

    public void setRealNameAuthenticationStatus(Long realNameAuthenticationStatus) {
        this.realNameAuthenticationStatus = realNameAuthenticationStatus;
    }

    public Long getStatus() {
        return status;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getLid() {
        return lid;
    }

    public void setLid(Long lid) {
        this.lid = lid;
    }

    public String getLoginPassword() {
        return loginPassword;
    }

    public void setLoginPassword(String loginPassword) {
        this.loginPassword = loginPassword;
    }

    public String getPaymentPassword() {
        return paymentPassword;
    }

    public void setPaymentPassword(String paymentPassword) {
        this.paymentPassword = paymentPassword;
    }

    public Long getLoginPasswordStatus() {
        return loginPasswordStatus;
    }

    public void setLoginPasswordStatus(Long loginPasswordStatus) {
        this.loginPasswordStatus = loginPasswordStatus;
    }

    public Long getPaymentPasswordStatus() {
        return paymentPasswordStatus;
    }

    public void setPaymentPasswordStatus(Long paymentPasswordStatus) {
        this.paymentPasswordStatus = paymentPasswordStatus;
    }

    public Date getLoginTime() {
        return loginTime;
    }

    public void setLoginTime(Date loginTime) {
        this.loginTime = loginTime;
    }

    public BigDecimal getTotalBalance() {
        return totalBalance;
    }

    public void setTotalBalance(BigDecimal totalBalance) {
        this.totalBalance = totalBalance;
    }

    public BigDecimal getAccountStatus() {
        return accountStatus;
    }

    public void setAccountStatus(BigDecimal accountStatus) {
        this.accountStatus = accountStatus;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public Integer getNumber() {
        return number;
    }

    public void setNumber(Integer number) {
        this.number = number;
    }
}
